package model

import (
	"time"
)

const SettingPropName = "setting_prop"

type SettingProp struct {
	Id      int               `json:"id" orm:"auto" sql:"INT"`
	Name    map[string]string `json:"name" sql:"JSON"`
	Desc    map[string]string `json:"desc" sql:"JSON"`
	Icon    string            `json:"icon" sql:"VARCHAR"`
	Group   []int             `json:"group" sql:"JSON"`
	Weight  int               `json:"weight" sql:"INT"`
	CanSell bool              `json:"can_sell" sql:"TINYINT"`

	Mode        PropMode                 `json:"mode" sql:"TINYINT"`
	Require     CompareDataRelationSlice `json:"require" sql:"JSON"`
	Receive     DataRelationSlice        `json:"receive" sql:"JSON"`
	SellReceive DataRelationSlice        `json:"sell_receive" sql:"JSON"`
	Effect      DataRelationSlice        `json:"effect" sql:"JSON"`
	EffectText  ShowTextSlice            `json:"effect_text" sql:"JSON"`

	UpdateTime *time.Time `json:"update_time" orm:"updateTime" sql:"DATETIME"`
}
